package com.netposa.datawarehouse.aggregator.portrait.model;

import java.io.Serializable;
import java.util.Arrays;

public class PortraitSearchCondition implements Serializable {
   private String[] arrCameraId;
   private int currentPage;
   private int pageSize;
   private String imagePath;
   private String featureType = "featureType";
   private String startTime;
   private String endTime;
   private String taskId;
   private String sortType;
   private int threshold;
   private String userToken;
   private boolean isDescending = true;

   public String[] getArrCameraId() {
      return this.arrCameraId;
   }

   public int getCurrentPage() {
      return this.currentPage;
   }

   public int getPageSize() {
      return this.pageSize;
   }

   public String getImagePath() {
      return this.imagePath;
   }

   public String getFeatureType() {
      return this.featureType;
   }

   public String getStartTime() {
      return this.startTime;
   }

   public String getEndTime() {
      return this.endTime;
   }

   public String getTaskId() {
      return this.taskId;
   }

   public String getSortType() {
      return this.sortType;
   }

   public int getThreshold() {
      return this.threshold;
   }

   public String getUserToken() {
      return this.userToken;
   }

   public boolean isDescending() {
      return this.isDescending;
   }

   public void setArrCameraId(String[] arrCameraId) {
      this.arrCameraId = arrCameraId;
   }

   public void setCurrentPage(int currentPage) {
      this.currentPage = currentPage;
   }

   public void setPageSize(int pageSize) {
      this.pageSize = pageSize;
   }

   public void setImagePath(String imagePath) {
      this.imagePath = imagePath;
   }

   public void setFeatureType(String featureType) {
      this.featureType = featureType;
   }

   public void setStartTime(String startTime) {
      this.startTime = startTime;
   }

   public void setEndTime(String endTime) {
      this.endTime = endTime;
   }

   public void setTaskId(String taskId) {
      this.taskId = taskId;
   }

   public void setSortType(String sortType) {
      this.sortType = sortType;
   }

   public void setThreshold(int threshold) {
      this.threshold = threshold;
   }

   public void setUserToken(String userToken) {
      this.userToken = userToken;
   }

   public void setDescending(boolean isDescending) {
      this.isDescending = isDescending;
   }

   public boolean equals(Object o) {
      if (o == this) {
         return true;
      } else if (!(o instanceof PortraitSearchCondition)) {
         return false;
      } else {
         PortraitSearchCondition other = (PortraitSearchCondition)o;
         if (!other.canEqual(this)) {
            return false;
         } else if (!Arrays.deepEquals(this.getArrCameraId(), other.getArrCameraId())) {
            return false;
         } else if (this.getCurrentPage() != other.getCurrentPage()) {
            return false;
         } else if (this.getPageSize() != other.getPageSize()) {
            return false;
         } else {
            Object this$imagePath = this.getImagePath();
            Object other$imagePath = other.getImagePath();
            if (this$imagePath == null) {
               if (other$imagePath != null) {
                  return false;
               }
            } else if (!this$imagePath.equals(other$imagePath)) {
               return false;
            }

            label103: {
               Object this$featureType = this.getFeatureType();
               Object other$featureType = other.getFeatureType();
               if (this$featureType == null) {
                  if (other$featureType == null) {
                     break label103;
                  }
               } else if (this$featureType.equals(other$featureType)) {
                  break label103;
               }

               return false;
            }

            label96: {
               Object this$startTime = this.getStartTime();
               Object other$startTime = other.getStartTime();
               if (this$startTime == null) {
                  if (other$startTime == null) {
                     break label96;
                  }
               } else if (this$startTime.equals(other$startTime)) {
                  break label96;
               }

               return false;
            }

            Object this$endTime = this.getEndTime();
            Object other$endTime = other.getEndTime();
            if (this$endTime == null) {
               if (other$endTime != null) {
                  return false;
               }
            } else if (!this$endTime.equals(other$endTime)) {
               return false;
            }

            Object this$taskId = this.getTaskId();
            Object other$taskId = other.getTaskId();
            if (this$taskId == null) {
               if (other$taskId != null) {
                  return false;
               }
            } else if (!this$taskId.equals(other$taskId)) {
               return false;
            }

            label75: {
               Object this$sortType = this.getSortType();
               Object other$sortType = other.getSortType();
               if (this$sortType == null) {
                  if (other$sortType == null) {
                     break label75;
                  }
               } else if (this$sortType.equals(other$sortType)) {
                  break label75;
               }

               return false;
            }

            if (this.getThreshold() != other.getThreshold()) {
               return false;
            } else {
               Object this$userToken = this.getUserToken();
               Object other$userToken = other.getUserToken();
               if (this$userToken == null) {
                  if (other$userToken != null) {
                     return false;
                  }
               } else if (!this$userToken.equals(other$userToken)) {
                  return false;
               }

               if (this.isDescending() != other.isDescending()) {
                  return false;
               } else {
                  return true;
               }
            }
         }
      }
   }

   protected boolean canEqual(Object other) {
      return other instanceof PortraitSearchCondition;
   }

   public int hashCode() {
      
      int result = 1;
      result = result * 59 + Arrays.deepHashCode(this.getArrCameraId());
      result = result * 59 + this.getCurrentPage();
      result = result * 59 + this.getPageSize();
      Object $imagePath = this.getImagePath();
      result = result * 59 + ($imagePath == null ? 43 : $imagePath.hashCode());
      Object $featureType = this.getFeatureType();
      result = result * 59 + ($featureType == null ? 43 : $featureType.hashCode());
      Object $startTime = this.getStartTime();
      result = result * 59 + ($startTime == null ? 43 : $startTime.hashCode());
      Object $endTime = this.getEndTime();
      result = result * 59 + ($endTime == null ? 43 : $endTime.hashCode());
      Object $taskId = this.getTaskId();
      result = result * 59 + ($taskId == null ? 43 : $taskId.hashCode());
      Object $sortType = this.getSortType();
      result = result * 59 + ($sortType == null ? 43 : $sortType.hashCode());
      result = result * 59 + this.getThreshold();
      Object $userToken = this.getUserToken();
      result = result * 59 + ($userToken == null ? 43 : $userToken.hashCode());
      result = result * 59 + (this.isDescending() ? 79 : 97);
      return result;
   }

   public String toString() {
      return "PortraitSearchCondition(arrCameraId=" + Arrays.deepToString(this.getArrCameraId()) + ", currentPage=" + this.getCurrentPage() + ", pageSize=" + this.getPageSize() + ", imagePath=" + this.getImagePath() + ", featureType=" + this.getFeatureType() + ", startTime=" + this.getStartTime() + ", endTime=" + this.getEndTime() + ", taskId=" + this.getTaskId() + ", sortType=" + this.getSortType() + ", threshold=" + this.getThreshold() + ", userToken=" + this.getUserToken() + ", isDescending=" + this.isDescending() + ")";
   }
}
